#pragma once
#include <chrono>

class stop_timer {
public:
	stop_timer() {
		start_time = now();
	}
	~stop_timer() {
		end_time = now();
	}
	std::chrono::milliseconds start() {
		start_time = now();
		return start_time; 
	}

	std::chrono::milliseconds stop() {
		end_time = now();
		return end_time;
	}

	long long  esc_ms()  const {
		return  std::chrono::milliseconds(end_time).count() - std::chrono::milliseconds(start_time).count();
	}
	std::chrono::milliseconds now() const {
		return std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()); ;
	}

public:
	std::chrono::milliseconds start_time;
	std::chrono::milliseconds end_time;

};